package com.sz.biz.logistics.core.service;

import com.sz.biz.logistics.core.entity.FreightItem;

import java.util.List;

/**
 * Function: 报价方案明细service <br>
 * Author: wentao.chang <br>
 * Date: 2017-03-24 14:58:00
 */

public interface PriceQuotationItemService {
    /**
     * 新增
     *
     * @param entry 新增的实体
     * @return 新增是否成功
     */
    int save(FreightItem entry);

    /**
     * 批量新增
     *
     * @param list
     */
    void batchsave(List<FreightItem> list);

    /**
     * 根据quotationId查询单个实体
     *
     * @param quotationId
     * @return 查询出来的实体对象
     */
    List<FreightItem> findByQuotationId(int quotationId);

    /**
     * 根据quotationSetId查询单个实体
     *
     * @param quotationSetId
     * @return 查询出来的实体对象
     */
    List<FreightItem> findByQuotationSetId(int quotationSetId);

    /**
     * 根据主键Id查询单个实体
     *
     * @param id 主键id
     * @return 查询出来的实体对象
     */
    FreightItem findById(Integer id);

    /**
     * 根据quotationId
     *
     * @param quotationId quotationId
     */
    void deletedByQuotationId(Integer quotationId);

    /**
     * 根据quotationSetId删除
     *
     * @param quotationSetId quotationSetId
     */
    void deletedByQuotationSetId(Integer quotationSetId);

    /**
     * 根据quotationId+toRegionUid获取价格方案下某个目标分区的报价
     *
     * @param quotationSetId quotationId
     * @param toRegionUid    toRegionUid
     */
    List<FreightItem> findByQuotationSetIdAndRegionUid(int quotationSetId, String toRegionUid);
}
